package com.kitty.record.kittyalgorithm.basicalgorithm;

import java.util.Arrays;

/**
 * 冒泡排序算法
 * 比较两个相邻的元素大小，如果前面的元素大于后面的元素九江这两个元素交换；
 *
 *
 * 选择排序
 * 从序列的第二个元素开始选择元素与第一个比较，如果比第一个元素小就交换，
 * @Author SHEN
 * @Date 2020/12/30
 */
public class BubbleSort {

    public static void main(String[] args) {
        int[] a1 = new int[]{9,8,6,3,4,5,2,6,7};
        int[] a2 = new int[]{9,8,6,3,4,5,2,6,7};

        bubbleSort(a1);
        selectSort(a2);

        System.out.println("a1 = " + Arrays.toString(a1));

        System.out.println("a2 = " + Arrays.toString(a2));

    }


    public static void bubbleSort(int[] array) {

        for (int i = 0; i < array.length; i++) {
            for (int j = 1; j < array.length - i; j++) {
                if(array[j - 1] > array[j]){

                    int tmp;
                    tmp = array[j - 1];
                    array[j - 1] = array[j];
                    array[j] = tmp;

                }
            }
        }
    }

    public static void selectSort(int[] array) {

        for (int i = 0; i < array.length; i++) {
            for (int j = i + 1; j < array.length; j++) {
                if (array[i] > array[j]) {
                    //交换
                    int tmp;
                    tmp = array[i];
                    array[i] = array[j];
                    array[j] = tmp;

                }
            }
        }
    }


}
